import request from '@/utils/request'

// 查询产品列表
export function listProduct(query) {
  return request({
    url: '/smart/product/list',
    method: 'get',
    params: query
  })
}

//
//      * 参数分别是：
//      * 1.组织机构[organization]（参数：0，所有机构，其他：组织机构id）
//      * 2.产品计划[plan]（参数：0，所有计划，其他：计划ID）
//      * 3.产品型号[productModel]（参数：0，所有型号，其他：产品型号ID）
//      *
//      * @return 产品集合
//      */
// 查询产品列表
export function listProductAll(query) {
  return request({
    url: '/smart/product/listAll',
    method: 'get',
    params: query
  })
}

//
//      * 参数分别是：
//      * 1.组织机构[organization]（参数：0，所有机构，其他：组织机构id）
//      * 2.产品计划[plan]（参数：0，所有计划，其他：计划ID）
//      * 3.产品型号[productModel]（参数：0，所有型号，其他：产品型号ID）
//      * 4.前推几周[previous] (参数为正整数)
//      * @return 产品集合
//      */
//查询这周合格产品和不合格产品数据量
export function productQualityNumWeek(query) {
  return request({
    url: '/smart/product/productQualityNumWeek',
    method: 'get',
    params: query
  })
}

//
//      * 参数分别是：
//      * 1.组织机构[organization]（参数：0或者空，所有机构，其他：组织机构id）
//      * 2.产品计划[plan]（参数：0或者空，所有计划，其他：计划ID）
//      * 3.产品型号[productModel]（参数：0或者空，所有型号，其他：产品型号ID）
//      *
//      * @return 产品集合
//      */
//查询合格产品和不合格产品数据量总数
export function productQualityNum(query) {
  return request({
    url: '/smart/product/productQualityNum',
    method: 'get',
    params: query
  })
}


//
//      * 参数 id  产品id
//      *
//      * @return 检验数据
//      */
//查询产品检验信息
export function productQualityChart(id) {
  return request({
    url: '/smart/product/productQualityChart/' + id,
    method: 'get'
  })
}

// 查询产品详细
export function getProduct(id) {
  return request({
    url: '/smart/product/' + id,
    method: 'get'
  })
}

// 新增产品
export function addProduct(data) {
  return request({
    url: '/smart/product',
    method: 'post',
    data: data
  })
}

// 修改产品
export function updateProduct(data) {
  return request({
    url: '/smart/product',
    method: 'put',
    data: data
  })
}

// 删除产品
export function delProduct(id) {
  return request({
    url: '/smart/product/' + id,
    method: 'delete'
  })
}
